package com.inno.system.service.impl;

import cn.hutool.core.util.IdUtil;
import com.inno.system.entity.PlannerNews;
import com.inno.system.mapper.PlannerNewsDao;
import com.inno.system.service.PlannerNewsService;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;

import java.util.Date;
import java.util.List;


/**
 * (PlannerNews)表服务实现类
 *
 * @author makejava
 * @since 2025-01-04 17:17:34
 */
@Service("plannerNewsService")
public class PlannerNewsServiceImpl implements PlannerNewsService {
    @Resource
    private PlannerNewsDao plannerNewsDao;

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    @Override
    public PlannerNews queryById(Long id) {
        return this.plannerNewsDao.queryById(id);
    }



    /**
     * 新增数据
     *
     * @param plannerNews 实例对象
     * @return 实例对象
     */
    @Override
    public PlannerNews insert(PlannerNews plannerNews) {
        plannerNews.setCreateTime(new Date());
        plannerNews.setId(IdUtil.getSnowflakeNextId());
        this.plannerNewsDao.insert(plannerNews);
        return plannerNews;
    }

    /**
     * 修改数据
     *
     * @param plannerNews 实例对象
     * @return 实例对象
     */
    @Override
    public PlannerNews update(PlannerNews plannerNews) {
        this.plannerNewsDao.update(plannerNews);
        return this.queryById(plannerNews.getId());
    }

    /**
     * 通过主键删除数据
     *
     * @param id 主键
     * @return 是否成功
     */
    @Override
    public boolean deleteById(Long id) {
        return this.plannerNewsDao.deleteById(id) > 0;
    }

    @Override
    public List<PlannerNews> queryList() {
        return this.plannerNewsDao.queryList();
    }
}
